package com.ruoyi.wvp.sdk.monitor;

import com.ruoyi.wvp.sdk.monitor.entity.params.AlarmEventPageParams;
import com.ruoyi.wvp.sdk.monitor.entity.params.LiveHistoryParams;
import com.ruoyi.wvp.sdk.monitor.entity.params.LiveParams;
import com.ruoyi.wvp.sdk.monitor.entity.params.LoginParams;
import com.ruoyi.wvp.sdk.monitor.entity.MonitorEventInfo;
import com.ruoyi.wvp.sdk.monitor.entity.PageEntity;
import com.ruoyi.wvp.sdk.monitor.entity.response.LiveHistoryInfo;
import com.ruoyi.wvp.sdk.monitor.entity.response.LiveInfo;
import com.ruoyi.wvp.sdk.monitor.entity.response.MonitorStatus;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.service.annotation.GetExchange;
import org.springframework.web.service.annotation.HttpExchange;
import org.springframework.web.service.annotation.PostExchange;

import java.util.List;

@HttpExchange
public interface MonitorApi {

    @PostExchange("/img/login/")
    R<String> login(@RequestBody LoginParams loginParams);

    @PostExchange("/img/alarmEvent-page-user/")
    R<PageEntity<MonitorEventInfo>> getAlarmEventPageUser(@RequestBody AlarmEventPageParams alarmEventPageParams);

    @PostExchange("/img/videolive-address-user/")
    R<LiveInfo> getLiveInfo(@RequestBody LiveParams liveParams);

    @PostExchange("/img/replay-url-user/")
    R<LiveHistoryInfo> getLiveHistoryInfo(@RequestBody LiveHistoryParams liveHistoryParams);

    @GetExchange("/img/nsCamStatus-user/")
    R<List<MonitorStatus>> getMonitorStatus();
}
